#pragma once
#include "ximage.h"

class CODButton : public CButton
{
	enum OD_Button_Status
	{
		Status_Normal,
		Status_Focused,
		Status_Pushed,
		Status_Disabled,
	};
	DECLARE_DYNAMIC(CODButton)

public:
	CODButton();
	virtual ~CODButton();

	afx_msg BOOL OnEraseBkgnd(CDC* pDC);
	afx_msg void OnDestroy();
	afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
	afx_msg void OnMouseMove(UINT nFlags, CPoint point);
	afx_msg LRESULT OnMouseLeave(WPARAM wParam, LPARAM lParam);
    virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
	DECLARE_MESSAGE_MAP()
public:
	BOOL SetThemeBmp(CString sFileName);
	void ExcludeRgn(CDC *pDC);
	void ExcludeRect(CDC* pDC );
	void Render(CDC *pDC);

	int m_nStatus;
	CxImage m_imgButton;

protected:
	virtual void PreSubclassWindow();
};


